﻿using System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Media;
using Infrastucture;
using TimeSplicerModule.DomainModels;

namespace TimeSplicerModule.ViewModels
{
    public class ProjectViewModel : ProjectModel
    {
        private string _searchText;
        private bool _isEnabled;
        private bool _isAddTaskButtonEnabled;
        private bool _isCompleteButtonEnabled;
        private Visibility _usersVisibility;
        private Visibility _tasksVisibility;
        private Visibility _completedDateVisibility;
        private Visibility _reportsVisibility;
        private SolidColorBrush _statusBrushColor;

        public string SearchText
        {
            get { return _searchText; }
            set { SetProperty(ref _searchText, value); }
        }
        public bool IsEnabled
        {
            get { return _isEnabled; }
            set { SetProperty(ref _isEnabled, value); }
        }
        public bool IsAddTaskButtonEnabled
        {
            get { return _isAddTaskButtonEnabled; }
            set { SetProperty(ref _isAddTaskButtonEnabled, value); }
        }
        public bool IsCompleteButtonEnabled
        {
            get { return _isCompleteButtonEnabled; }
            set { SetProperty(ref _isCompleteButtonEnabled, value); }
        }
        public Visibility UsersVilibility
        {
            get { return  _usersVisibility; }
            set { SetProperty(ref _usersVisibility, value); }
        }
        public Visibility TasksVisibility
        {
            get { return _tasksVisibility; }
            set { SetProperty(ref _tasksVisibility, value); }
        }
        public Visibility CompletedDateVisibility
        {
            get { return _completedDateVisibility; }
            set { SetProperty(ref _completedDateVisibility, value); }
        }
        public Visibility ReportsVisibility
        {
            get { return _reportsVisibility; }
            set { SetProperty(ref _reportsVisibility, value); }
        }
        public SolidColorBrush StatusBrushColor
        {
            get { return _statusBrushColor; }
            set { SetProperty(ref _statusBrushColor, value); }
        }
    }
}
